一、前言
昨天第一次使用天氣 API,
透過 Open-Meteo 取得了目前的天氣資料,
也初步看到 API 回傳的 JSON。
今天則要進一步實際測試不同的查詢條件,
前面在使用書籍 API 和電影 API 時,
都有透過修改關鍵字來觀察搜尋結果的變化,
天氣 API 雖然不是使用關鍵字搜尋,
但也可以透過修改 URL 中的參數,
來查詢不同地點的天氣。
今天會使用同一個天氣 API,
分別查詢三個不同的地點,再比較三次查詢得到的結果。
⸻
二、測試地點
這次選擇三個不同的台灣城市進行測試:
天氣 API 使用的是:
https://api.open-meteo.com/v1/forecast
而查詢地點主要是透過 latitude 和 longitude 這兩個參數指定。
可以看到網址後面有:
latitude=25.03
longitude=121.56
這兩個參數就是用來指定查詢的位置。
⸻
三、實際操作
首先先使用台北的網址進行查詢:
https://api.open-meteo.com/v1/forecast?latitude=25.03&longitude=121.56¤t=temperature_2m,relative_humidity_2m,wind_speed_10m
確認可以正常取得資料後,再
將網址中的座標修改成其他城市。
台中的查詢網址:
高雄的查詢網址:
三個網址使用的 API 都是一樣的,
只有 latitude 和 longitude 不同。
打開三個網址後,就可以分別看到三個地點的天氣資料。
⸻
四、簡單比較三次搜尋結果
將三次查詢結果放在一起比較,可以發現雖然使用的是同一個 API,但因為查詢的地點不同,所以回傳的天氣資料也會有所不同。
今天比較重要的不是比較哪個城市比較熱,
而是觀察 Parameter 改變後,
API 回傳的資料也會跟著改變。
這和之前書籍 API 修改 q 搜尋不同關鍵字的概念很像。
書籍 API 是:q=Harry或q=Potter來改變搜尋條件。
天氣 API 則是修改:latitude跟longitude來改變查詢的地點。
因此可以再次看到,
Parameter 會直接影響 API 最後回傳的結果。
⸻
五、總結
今天實際使用天氣 API 查詢了台北、台中和高雄三個不同的地點。
透過修改 latitude 和 longitude,
可以讓同一個 API 查詢不同位置的天氣資料。
這次操作類似前面學過的 Web API 基本流程:
Endpoint → Parameter → Request → Response → JSON
雖然這次使用的 API 和前面的書籍、電影 API 不同,但基本的操作方式並沒有改變。
前面是透過 q 修改搜尋關鍵字,
而這次則是透過經緯度修改查詢地點。
也可以發現API 本身不一定需要改變,
只要提供不同的參數,就能得到不同的資料。
接下來會繼續觀察天氣 API 回傳的 JSON,進一步了解這些資料是怎麼組成的。